//
//  UIFont+GM.m
//  News
//
//  Created by 雷国敏 on 16/9/23.
//  Copyright © 2016年 lieop. All rights reserved.
//

#import "UIFont+GM.h"

@implementation UIFont (GM)
/**
 *  根据文本获取文本占用的大小
 *
 *  @param string  文本q
 *  @param font    字体
 *  @param maxSize 最大的宽高
 *
 *  @return  =
 */
+(CGSize)gm_sizeWithString:(NSString *)string font:(UIFont *)font maxSize:(CGSize)maxSize
{
	NSDictionary *dict = @{NSFontAttributeName:font};
	//    Size:文本能占用的最大宽高
	//    options: ios提供的计算方式
	//    attributes: 字体和大小
	//    context: nil
	// 如果计算的文本超过了给定的最大的宽高,就返回最大宽高,如果没有超过,就返回真实占用的宽高
	CGRect rect =  [string boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:dict context:nil];
	return rect.size;
}



+(CGSize)gm_autoSizeWithString:(NSString *)string fontSize:(CGFloat)fontSize maxSize:(CGSize)maxSize
{
	
	UIFont *font = IPHONE6P ?[UIFont systemFontOfSize:(fontSize + 2)]:[UIFont systemFontOfSize:fontSize];
	NSDictionary *dict = @{NSFontAttributeName:font};
	CGRect rect =  [string boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:dict context:nil];
	return rect.size;
}



/**
 *  适配字体
 *
 *  @param font 传入字体
 *
 *  @return 返回字体
 */
+(UIFont *)gm_adaptiveFontSize:(CGFloat)fontSize{
	
	/*
	 步骤
	 1.接受输入字体
	 2.判断是什么手机
	 3.返回相应字体
	 */
	return IPHONE6P ? [UIFont systemFontOfSize:(fontSize * 1.3)] : [UIFont systemFontOfSize:fontSize];
}



/**
 *  加粗
 *
 *  @param fontSize <#fontSize description#>
 *
 *  @return <#return value description#>
 */
+(UIFont *)gm_adaptiveBoldFontSize:(CGFloat)fontSize{
	return 	IPHONE6P ? [UIFont boldSystemFontOfSize:(fontSize * 1.3)] : [UIFont boldSystemFontOfSize:fontSize];
}
@end
